package app;

import java.util.ArrayList;
import java.util.Iterator;
import java.util.LinkedList;
import java.util.List;

public class Inicio {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		Sistema sistema = new Sistema();
		List<Object[]> tuplas = sistema.telefonosPorTipo();
		System.out.println("Telefonos Por Tipo");
		for(Object[] tupla : tuplas){
			for(int i = 0; i < tupla.length; i++)
				System.out.print("\t"+tupla[i]);
			System.out.println();
		}
		
		System.out.println("Telefonos Por Area");
		List<String> lstareas = new ArrayList<String>();
		lstareas.add("011");
		lstareas.add("351");
		tuplas = sistema.telefonosPorArea(lstareas);
		for(Object[] tupla : tuplas){
			for(int i = 0; i < tupla.length; i++)
				System.out.print("\t"+tupla[i]);
			System.out.println();
		}
		
		System.out.println("Saldo Por Usuario");
		tuplas = sistema.saldoPorUsuario();
		for(Object[] tupla : tuplas){
			for(int i = 0; i < tupla.length; i++)
				System.out.print("\t"+tupla[i]);
			System.out.println();
		}
		
		//@Autor:JDL // NO FUNCIONO, porque el atributo "tipo" no existe
		System.out.println("Por tipo de cuenta, global");
//		List<Object[]> cuentas = sistema.porTipoCuentas();
//		
//		for (Object[] cuenta : cuentas) {
//			for (int i = 0; i < cuenta.length; i++) {
//				System.out.println(cuenta[i]);
//			}
//		}
		
		
		System.out.println("Agrupado por localidad");
		List<Object[]> locas = sistema.porLocalidad();
		for (Object[] loc : locas) {
			for (int i = 0; i < loc.length; i++) {
				System.out.println(loc[i]);
			}
		}
		
		System.out.println("Listado de usuarios-telefonos");
		List<Object[]> list = sistema.listadoUsuariosTelefonos();
		for (Object[] utel : list) {
			for (int i = 0; i < utel.length; i++) 
				System.out.print(utel[i]+":");
			
			System.out.println();	
		}
		
		System.out.println("Listado de usuarios CON WHERE");
		
		List<Object[]> list2 = sistema.listadoUsuariosTelefonosConWhere("c1234");
			
		for (Object[] utel2 : list2) {
			for (int i = 0; i < utel2.length; i++)
				System.out.print(utel2[i]+":");
			
			System.out.println();	
		}
		System.out.println("listado de usuarios con IN");
		List<String> in = new LinkedList<String>();
		in.add("c1234");
//		in.add("c1235");
		
		List<Object[]> listin = sistema.listadoUsuariosTelefonosConWhereIn(in);
		for (Object[] objects : listin) {
			for (int i = 0; i < objects.length; i++) 
				System.out.print(objects[i]);
			System.out.println();
		}
		
		System.out.println("Listado de usuarios haciendo subconsulta");
		String user = new String("Usuario2");
		List<Object[]> listsub = sistema.listadoUsuariosSubconsulta(user);
		for (Object[] o : listsub) {
			for (int i = 0; i < o.length; i++) 
				System.out.print(o[i]);
			System.out.println();
		}

	}
}
